package com.ruoyi.report_ljlm.domain.vo;

import java.math.BigDecimal;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.utils.BigDecimalUtil;
import com.ruoyi.report_tg.domain.vo.ExcelGeneralVo;
import lombok.Data;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;


/**
 * 路基路面厚度测试试验检测报告视图对象 report_ljlm_hdbg_bs_info
 *
 * @author llb
 * @date 2024-07-10
 */
@Data
@ExcelIgnoreUnannotated
public class HdbgBsInfoVo extends ExcelGeneralVo {

    private static final long serialVersionUID = 1L;

    /**
     * 一份excel表格的唯一id(其他的excel主表，都应有此字段）
     */
    @ExcelProperty(value = "一份excel表格的唯一id(其他的excel主表，都应有此字段）")
    private Long excelId;

    /**
     * 共几页
     */
    @ExcelProperty(value = "共几页")
    private Long totalPage;

    /**
     * 第几页
     */
    @ExcelProperty(value = "第几页")
    private Long page;

    /**
     * 检测单位名称
     */
    @ExcelProperty(value = "检测单位名称")
    private String jiancdwmc;

    /**
     * 报告编号
     */
    @ExcelProperty(value = "报告编号")
    private String baogbh;

    /**
     * 施工/委托单位
     */
    @ExcelProperty(value = "施工/委托单位")
    private String shigwtdw;

    /**
     * 工程名称
     */
    @ExcelProperty(value = "工程名称")
    private String gongcmc;

    /**
     * 工程部位/用途
     */
    @ExcelProperty(value = "工程部位/用途")
    private String gongcbwyt;

    /**
     * 样品名称
     */
    @ExcelProperty(value = "样品名称")
    private String yangpmc;

    /**
     * 样品编号
     */
    @ExcelProperty(value = "样品编号")
    private String yangpbh;

    /**
     * 样品数量
     */
    @ExcelProperty(value = "样品数量")
    private String yangpsl;

    /**
     * 样品状态
     */
    @ExcelProperty(value = "样品状态")
    private String yangpzt;

    /**
     * 样品时间
     */
    @ExcelProperty(value = "样品时间")
    private String yangpsj;

    /**
     * 检测依据
     */
    @ExcelProperty(value = "检测依据")
    private String jiancyj;

    /**
     * 判定依据
     */
    @ExcelProperty(value = "判定依据")
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
    @ExcelProperty(value = "主要仪器设备名称及编号")
    private String zhuyyqsbmcjbh;

    /**
     * 厚度设计值
     */
    @ExcelProperty(value = "厚度设计值")
    private BigDecimal houdsjz;

    /**
     * 允许偏差
     */
    @ExcelProperty(value = "允许偏差")
    private BigDecimal yunxpc;

    /**
     * 平均值
     */
    @ExcelProperty(value = "平均值")
    private BigDecimal pingjz;

    /**
     * 标准差S
     */
    @ExcelProperty(value = "标准差S")
    private BigDecimal bzc;

    /**
     * 厚度代表值
     */
    @ExcelProperty(value = "厚度代表值")
    private BigDecimal houddbz;

    /**
     * 检测点数
     */
    @ExcelProperty(value = "检测点数")
    private BigDecimal jiancds;

    /**
     * 合格点数
     */
    @ExcelProperty(value = "合格点数")
    private BigDecimal hegds;

    /**
     * 合格率
     */
    @ExcelProperty(value = "合格率")
    private BigDecimal hegl;

    /**
     * 检测结论
     */
    @ExcelProperty(value = "检测结论")
    private String jiancjl;

    /**
     * 附加声明
     */
    @ExcelProperty(value = "附加声明")
    private String fujsm;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String bgFlag;

    /**
     * 检测
     */
    @ExcelProperty(value = "检测")
    private String jianc;

    /**
     * 记录
     */
    @ExcelProperty(value = "记录")
    private String jil;

    /**
     * 复核
     */
    @ExcelProperty(value = "复核")
    private String fuh;

    /**
     * 日期
     */
    @ExcelProperty(value = "日期")
    private String riq;

    /**
     * 设备ids
     */
    @ExcelProperty(value = "设备ids")
    private String shebIds;

    /**
     * 判断依据ids
     */
    @ExcelProperty(value = "判断依据ids")
    private String pandyjIds;

    /**
     * 检测依据ids
     */
    @ExcelProperty(value = "检测依据ids")
    private String jiancyjIds;

    List<HdbgBsDetailVo> detailList;

    public HdbgBsInfoVo() {
        detailList = new ArrayList<>(36);
        for (int i = 1; i <= 36; i++) {
            detailList.add(new HdbgBsDetailVo());
        }
    }

    public void setHoudsjz(BigDecimal houdsjz) {
        this.houdsjz = BigDecimalUtil.stpTrailZero(houdsjz);
    }

    public void setYunxpc(BigDecimal yunxpc) {
        this.yunxpc = BigDecimalUtil.stpTrailZero(yunxpc);
    }

    public void setPingjz(BigDecimal pingjz) {
        this.pingjz = BigDecimalUtil.stpTrailZero(pingjz);
    }

    public void setBzc(BigDecimal bzc) {
        this.bzc = BigDecimalUtil.stpTrailZero(bzc);
    }

    public void setHouddbz(BigDecimal houddbz) {
        this.houddbz = BigDecimalUtil.stpTrailZero(houddbz);
    }

    public void setJiancds(BigDecimal jiancds) {
        this.jiancds = BigDecimalUtil.stpTrailZero(jiancds);
    }

    public void setHegds(BigDecimal hegds) {
        this.hegds = BigDecimalUtil.stpTrailZero(hegds);
    }

    public void setHegl(BigDecimal hegl) {
        this.hegl = BigDecimalUtil.stpTrailZero(hegl);
    }
}
